草庐IT

java - rabbitMQ 单元测试

全部标签

assembly - 为什么汇编 POPCNTQ 基准测试会比使用整数技巧的 native Go 函数慢?

ASM版本TEXT·CountBitsUint64PopCnt(SB),NOSPLIT,$0POPCNTQx+0(FP),AXMOVQAX,ret+8(FP)RETGo版本const(m1quint64=0x5555555555555555m2q=0x3333333333333333m4q=0x0f0f0f0f0f0f0f0fhq=0x0101010101010101)funcCountBitsUint64(xuint64)int{x-=(x>>1)&m1q//putcountofeach2bitsintothose2bitsx=(x&m2q)+((x>>2)&m2q)//putcou

database - Golang 测试,调用数据库 Prepare 应该会失败,但实际上并没有

我正在借助gosqlmock编写一些测试代码。以下代码不验证准备好的语句是否具有正确的查询。主要代码是这样的://main.gopackagemainimport"database/sql"functestFunction(db*sql.DB){db.Prepare("SELECT")}funcmain(){}和测试代码://main_test.gopackagemainimport("testing""github.com/stretchr/testify/assert"sqlmock"gopkg.in/DATA-DOG/go-sqlmock.v1")funcTestPrepare(

go - 使用 Go RabbitMQ streadway/amqp 驱动程序时无法从函数返回 *amqp.Channel

我正在尝试使用streadway/amqp连接到RabbitMQ总线Go的驱动程序。我正在处理重新连接例程,为此,我有一个rabbitMQConsume函数调用rabbitMQConnect函数。funcrabbitMQConnect(cfgobjects.GlobalConfig)(*amqp.Connection,*amqp.Channel,error){rabbitConfig:=amqp.Config{Vhost:cfg.RabbitVHost,Heartbeat:5,}//OpenconnectiontoRabbiturl:=fmt.Sprintf("amqp://"+cfg

unit-testing - golang 中的单元测试

我目前正在考虑在Go中为我的服务创建一些单元测试,以及在该功能之上构建的其他功能,我想知道在Go中进行单元测试的最佳方法是什么?我的代码如下所示:typeBBPeripheralstruct{client*http.Clientendpointstring}typeBBQuerystruct{Namestring`json:"name"`}typeBBResponsestruct{Brandstring`json:"brand"`Modelstring`json:"model"`...}typePeripheralstruct{BrandstringModelstring...}typ

testing - 在仅适用于某些版本的 golang 中运行测试

这个问题在这里已经有了答案:HowdoIskipatestsfileifitisrunonsystemswithgo1.4andbelow?(2个答案)关闭6年前。我这里有一个库(https://github.com/turtlemonvh/altscanner),其中包含将自定义扫描仪的功能与bufio.Scanner进行比较的测试.特别是,我将我的方法与theBuffermethod进行比较哪个wasn'taddeduntilgo1.6.我的实际代码适用于gobackto1.4的版本,但我想包括这个使用Buffer的测试(我也想添加一个基准测试)bufio.Scanner的功能对象

testing - 测试 Go 时如何跨包共享设置和拆卸方法?

假设我有两个包foo和bar。每个包都有文件和一个测试文件:foo---widget.go---widget_test.gobar---wingding.go---wingding_test.go现在对于两个测试(widget_test.go和wingding_test.go),我想分享一些设置代码。我知道我可以将这段代码放在main_test.go中的每个包中。但我显然不想在两个地方复制/粘贴代码。那么我可以将此代码放在哪里以便跨包共享呢? 最佳答案 把它放在另一个包baz中,foo和bar都在他们的测试中导入。我们将其用于测试中

excel - 在 golang 中,如何在 xlsx 中的单元格内输出换行符

我正在使用Go语言开发,echo框架。我正在使用包“github.com/tealeg/xlsx”和“github.com/Luxurioust/excelize”来创建和输出xlsx。在单元格中写入\n并输出后,如果我设置“Wraptext”,则会显示一个换行符。但是他们无法在程序中将“Wraptext”设置为xlsx。我该怎么做才能在输出时看到换行符?或者是否有解决该问题的软件包?谢谢。 最佳答案 “Github.com/tealeg/xlsx”Style类型的字段中有一个Alignment类型,我在对齐类型字段中找到了Wrap

testing - echo c.Get ("user") 在测试环境中不起作用

我正在尝试测试基于echo框架/路由器构建的golangAPI。我有以下测试......funcTestLogout(t*testing.T){loadConfig()db:=stubDBs(t)Convey("Whenyoupostto/logout",t,func(){Convey("withavalidtoken,youshouldgetaasuccessmsgandbeloggedout",func(){e:=echo.New()e.Use(middleware.JWTWithConfig(middleware.JWTConfig{SigningKey:[]byte("secr

java - 我将如何在 Java 中实现 Go 的无缓冲 channel ?

Go同时提供unbufferedandbufferedchannels用于goroutines(线程)之间的通信。是straightforward在Java中将缓冲channel实现为有界缓冲区。Go的无缓冲channel要求一个协程在另一个协程接收时发送。任何人都可以向我解释如何在Java中实现它吗? 最佳答案 在Java中你可以使用SynchronousQueue,Java8的源代码在这里http://grepcode.com/file/repository.grepcode.com/java/root/jdk/openjdk/

go - 有错误的表测试

给定一个像这样的Golang函数:funcGetKey(keystring,datamap[string]string)(string,error){value,present:=data[key]if!present{return"",errors.New(fmt.Sprintf("requestedkeydoesnotexist:%s",key))}returnvalue,nil}我将如何使用测试表来测试我返回的错误是否存在?例如:funcTestGetKey(t*testing.T){cases:=[]struct{Inputmap[string]stringKeystringR